package cosas;

///*
// * To change this template, choose Tools | Templates
// * and open the template in the editor.
// */
//package treegenerator;
//
//import javax.swing.JFrame;
//
//import com.mxgraph.swing.mxGraphComponent;
//import com.mxgraph.view.mxGraph;
//import java.awt.Container;
//import java.awt.FlowLayout;
//import java.awt.event.ActionEvent;
//import java.awt.event.ActionListener;
//import java.awt.print.PrinterException;
//import java.awt.print.PrinterJob;
//import java.util.ArrayList;
//import java.util.List;
//import javax.swing.JButton;
//import javax.swing.JLabel;
//
//public class TreeDraw extends JFrame {
//
//    private static final long serialVersionUID = -2707712944901661771L;
//    static mxGraph graph = new mxGraph();
//
//    public TreeDraw(GenericTreeNode<String> n) {
//
//        graph.getModel().beginUpdate();
//        try {
////            xValue = (xValue + (n.withNode * nodeEspacing)) * n.getNumberOfChildren();
//            Object v1 = graph.insertVertex(parent, null, n.getData(), xValue, yValue, anchoNodo, altoNodo);
//            imprimirHijosRecursivo(n, xValue, yValue, v1);
//        } finally {
//            graph.getModel().endUpdate();
//        }
//
//        mxGraphComponent graphComponent = new mxGraphComponent(graph);
//        getContentPane().add(graphComponent);
//    }
//
//    public static void imprimirHijos(GenericTreeNode<String> n) {
//        TreeDraw frame = new TreeDraw(n);
//
//
//        frame.setTitle("Hello, World!");
//        frame.setSize(800, 720);
//        frame.setVisible(true);
//        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//    }
//    static int xPadre;
//    static int yPadre;
//    static int xHijo;
//    static int yHijo;
//    static int xValue = 100;
//    static int yValue = 100;
//    static int xInc;
//    static int xNivel = 1;
//    static int tam = 300;
//    static Object parent = graph.getDefaultParent();
//    static int nodeEspacing = 10;
//    static int altoNodo = 15;
//    static int anchoNodo = 20;
//
//    static void imprimirHijosRecursivo(GenericTreeNode<String> n, int x, int y,
//            Object v1) {
//        if (n.hasChildren()) {
//            List<GenericTreeNode<String>> hijos = n.getChildren();
//            if (n.getNumberOfChildren() > 1) {
//                x = x + (n.withNode * nodeEspacing);
//            }
//            y += (yValue / 2);
//            for (int j = 0; j < n.getNumberOfChildren(); j++) {
//                Object v2 = graph.insertVertex(parent, null, hijos.get(j).getData(), x, y, anchoNodo, altoNodo);
//                graph.insertEdge(parent, null, "", v1, v2);
//                imprimirHijosRecursivo(hijos.get(j), x, y, v2);
//                x = x - (n.withNode * nodeEspacing);
//            }
//        }
//    }
//}
